/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package domain.controllers;

import domain.Entity.EntityTarea;
import domain.Entity.EntityTrabajador;
import domain.Entity.EntityUsuario;
import java.util.Collection;
import java.util.HashSet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import managers.TareaManager;
import managers.UsuarioManager;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
import org.springframework.web.servlet.view.RedirectView;

/**
 *
 * @author jorge
 */
public class asignarTrabajadorController implements Controller{
    
    public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
        
        ModelAndView mav = new ModelAndView();
        HttpSession session = request.getSession();
        EntityUsuario eu = (EntityUsuario) session.getAttribute("usuario");
        if(eu == null){
            mav.setView(new RedirectView("login.htm"));
            return mav;
        }else{
        UsuarioManager um = UsuarioManager.getInstance();
        TareaManager tm = TareaManager.getInstance();
        EntityTarea tarea = (EntityTarea) session.getAttribute("tarea");
        Collection trabajadores = new HashSet();
        long i= Integer.parseInt(request.getParameter("i"));
        while(i >= 0){
            String posible = request.getParameter("posible"+i);
                if(posible !=null){
                   long trabajador = Integer.parseInt(request.getParameter("asigando"+i ));
                    EntityTrabajador etr = um.getTrabajador(trabajador);
                    trabajadores.add(etr);
                }
            i = i - 1;
        }
        tarea.setEtr(trabajadores);
        tm.asignarTarea(tarea);
        
        mav.setView(new RedirectView("misTareas.htm"));
        return mav;
        
        }
    }
}
